**1. 干什么** 一条命令从输入到输出经过固定链路:Shell 解释定位、用户态程序执行、C 库封装摆参、系统调用陷入、内核代办返回。以`cat /etc/passwd`为例,字符串在 Shell、cat 进程、内核三处分段完成。 **2. 谁在调** * 用户态主体:bash 完成解析与定位,cat 子进程执行读字节与写输出。 * C 库封装层:`fork`、`execve`、`openat`、`read`、`write`、`exit_group`等 glibc 函数封装陷入动作。 * 内核态主体:创建进程、校验凭证、查找 inode、权限检查、搬运字节、回收资源。 **3. 做什么业务** 第一步,bash 拆分出命令名`cat`与参数`/etc/passwd`,在 PATH 中定位`/usr/bin/cat`。第二步,bash 经`fork`+`execve`请内核创建子进程并载入 cat 映像。第三步,cat 在用户态调用`openat`打开文件。第四步,内核核对 cat 进程的 UID/GID,查找`/etc/passwd`的 inode,检查权限位,允